System and method for managing data and updates to a database structure

ABSTRACT

The system manages database structure updates. The system may receive, via a development gateway, a development script. The system may also copy, via a backup engine to an update module, an existing object code. The system may deploy, via an update engine, the development script directly to the database structure. The system may also generate new object code within the database structure associated with the existing object code. The system may determine, via a database health monitoring module, at least one of a successful deployment of the new object code or an unsuccessful deployment of the new object code.

FIELD

The present disclosure generally relates to the management of data andupdates to database structures.

BACKGROUND

Traditional database updates and data management methods have typicallyrequired intermediate back up storage structures and multiple levels ofvalidation before a database structure was modified. These methodsincluded multiple redundant steps that introduce inefficiencies. Assuch, there is a need to solve the computer system problem bystreamlining the update and data management process of the structure ona database.

SUMMARY

The systems, methods and computer program products (collectively“system”) may be configured to manage database structure updates. Thesystem may be configured to perform operations comprising receiving, bythe computer based system and via a development gateway, a developmentscript. The system may also copy, by the computer based system and via abackup engine to a update module, an existing object code. The systemmay deploy, by the computer based system and via an update engine, thedevelopment script directly to the database structure. The system mayalso generate, by the computer based system, new object code within thedatabase structure associated with the existing object code. The systemmay determine, by the computer based system via a database healthmonitoring module, at least one of a successful deployment of the newobject code or an unsuccessful deployment of the new object code.

In various embodiments, the system may identify, by the computer basedsystem and via the update engine, existing object code within a databasestructure. The identify operation may include determining a location ofthe existing object code. The system may analyze, by the computer basedsystem via the database health monitoring module, the new object code.The object code may be associated with the development script. Thedevelopment gateway may be a user interface for a developer.

In various embodiments, the system may copy, by the computer basedsystem via the backup engine, the new object code to the update modulein response to the determining a successful deployment of the new objectcode. The new object code may replace the existing object code on theupdate module. The system may transmit, by the computer based system, anotification of the successful deployment of the new object code inresponse to at least one of the determining a successful deployment ofthe new object code or the copying the new object code to the updatemodule.

In various embodiments, the system may deploy, by the computer basedsystem via the backup engine, the existing object code from the updatemodule to the database structure in response to the determining theunsuccessful deployment of the new object code. The system may alsoreplace, by the computer based system, the new object code with theexisting object code in response to the deploying the existing objectcode from the back up storage system.

BRIEF DESCRIPTION OF THE DRAWINGS

The features and advantages of the present disclosure will become moreapparent from the detailed description set forth below when taken inconjunction with the drawings.

FIG. 1 is a system diagram showing a redundant data center system, inaccordance with various embodiments.

FIG. 2 is a partial system diagram of a database management system for aredundant data center system, in accordance with various embodiments.

FIG. 3 illustrates a method of managing data and updates for a databasestructure for a database management system of a redundant data centersystem, in accordance with various embodiments.

DETAILED DESCRIPTION

In various embodiments, the systems, methods and computer programproducts described provide updates and data management methods fordatabase structures in a redundant data center system. The detaileddescription of various embodiments makes reference to the accompanyingdrawings, which show various embodiments by way of illustration. Whilethese various embodiments are described in sufficient detail to enablethose skilled in the art to practice the disclosure, it should beunderstood that other embodiments may be realized and that logical andmechanical changes may be made without departing from the spirit andscope of the disclosure. Thus, the detailed description is presented forpurposes of illustration only and not of limitation. For example, thesteps recited in any of the method or process descriptions may beexecuted in any order and are not limited to the order presented.Moreover, any of the functions or steps may be outsourced to orperformed by one or more third parties. Furthermore, any reference tosingular includes plural embodiments, and any reference to more than onecomponent may include a singular embodiment.

In various embodiments, and with reference to FIG. 1, system 100 maycomprise one or more redundant data centers operatively coupled to andin electronic communication with one another. For example, system 100may comprise data center 110 and data center 130 in electroniccommunication with and/or operatively coupled to one another via network120. Data center 110 may comprise a first node 112 and a second node114. Data center 110 may also comprise a database management system 116.Similarly, data center 130 may comprise a first node 132 and a secondnode 134. Data center 130 may also comprise a database management system136. Data center 110 and data center 130 may be redundant systems and/orcopies or replicas of one another. In this regard, database managementsystem 116 may be replicated by database management system 136. Toensure data security and these replicated database structures may ensuredatabase security and data integrity. [QUESTION: WHAT IS THE SPECIFICPURPOSE OF THE REPLICATED DATABASE ARCHITECTURE?]

As used herein, data center may refer to systems that are configured tomanage and/or process partially or fully structured, semi-structured, orunstructured data sets including hundreds of thousands of columns andrecords. A big data set may be compiled, for example, from a history ofpurchase transactions over time, from web registrations, from socialmedia, from records of charge (ROC), from summaries of charges (SOC),from internal data, and/or from other suitable sources. Big data setsmay be compiled with or without descriptive metadata such as columntypes, counts, percentiles, and/or other interpretive-aid data points.The big data sets may be stored in various big-data storage formatscontaining millions of records (i.e., rows) and numerous variables(i.e., columns) for each record.

The present disclosure provides a system, method, and computer programproduct deployable at data centers that are configured to manage bigdata sets using a universal, unified interface for various data storagetypes. Differing data storage types may include various differentinterface types. For example, SQL-type queries written in the hive querylanguage (HQL) may be used to access data stored in Hive® data storageformat. However, the same SQL-type query may not be used to access datastored in an HBase storage system, which relies on a noSQL interface toretrieve stored data. A unified virtualized database layer may providean interface to interact with the Hive® and HBase data storage types, aswell as any other big data storage types, using a uniform query languageto retrieve, write, read, and otherwise work with stored data.

In various embodiments, data center 110 and/or data center 130 may beconfigured with parallel processing and storage. Data center 110 and/ordata center 130 may comprise a plurality of nodes (.e.g, node 112, node114, node 132, node 134, and/or the like) in electronic communicationwith each of the other nodes. Processing tasks may be split among thenodes of the various components of system 100 to improve throughput andenhance storage capacity. Distributed computing cluster may be, forexample, a Hadoop® cluster configured to process and store big data setswith some of the nodes comprising a distributed storage system and someof nodes comprising a distributed processing system. In that regard,system 100 may be configured to support a Hadoop® distributed filesystem (e.g., and HDFS) as specified by the Apache Software Foundation.

Database management system 116 and/or database management system 136, asshown in FIG. 1. may comprise and/or be configured as databasemanagement system 216. In various embodiments and with particularreference to FIG. 2, database management system 216 may comprise adatabase 240, an update module 245, an update engine 250, a backupengine 255, and a database health monitoring module 260. Moreover,database management system 216 may be operatively coupled to, inelectronic communication with, and/or otherwise accessible viadevelopment gateway 270. The various databases, engines, and modules ofdatabase management system 216 may be operatively coupled to one anotherand in electronic communication with one another to facilitate themanagement of database 240.

In various embodiments, and with reference to FIG. 2 and FIG. 3, thevarious elements databases, engines, and modules of the systems may beconfigured to perform a method 300 for administering database objectsand maintaining database structures in a redundant data center system.Method 300 may comprise receiving via a development gateway 270, adevelopment script (Step 305). In this regard, development gateway 270may be configured as a developer user interface. Application developersand database administrators may be capable of accessing variousstructures within database management system 216 via development gateway270. Moreover, development gateway 270 may be a file server. In thisregard, development gateway 270 may be configured to deploy objects tovarious structures in database management 216 including, for example,database 240, update engine 250, update module 245, backup engine 255,database health monitoring module 260, and/or the like.

In various embodiments, method 300 may further comprise identifying, viaupdate engine 250, existing object code within a database structure(e.g., database 240, update module 245, and/or the like) (Step 310). Theobject code may be associated with the development script. In thisregard, the development script may be associated with a particularstructure or function within database 240 and/or update module 245. Thedevelopment script may contain an association with existing object code.The development script may be configured to update, and/or replace theexisting object code to affect an update, maintenance, or otherwisechange database 240. [QUESTION: HOW IS THE DEVELOPMENT SCRIPT ASSOCIATEDWITH THE EXISTING OBJECT CODE? MORE PARTICULARLY, HOW IS THE DEVELOPMENTSCRIPT OR UPDATE STRUCTURED SO AS TO AFFECT AN UPDATE ON A PARTICULARSET OF OBJECTS WITHIN THE DATABASE?]

In various embodiments, method 300 may further comprise copying, viabackup engine 255, to update module 245 the existing object code, inresponse to identifying the existing object code with in the databasestructure (Step 315). Update module 245 may be any structure configuredto receive and/or store existing object code, in response to developmentscript being received and/or a change to a database structure including,for example, database 240, and/or the like. Update module 245 may beconfigured to automatically receive and/or capture, via backup engine255, the existing object code based on and/or in response to a changebeing detected. [QUESTION: DESCRIBE WHAT UPDATE MODULE IS IN PRACTICEAND HOW IT WORKS TO CAPTURE THE CODE FROM THE DATABASE WHERE A CHANGE ISBEING REQUESTED OF THAT CODE?]

In various embodiments, method 300 may further comprise deploying, viaupdate engine 250, the development script directly to the databasestructure (e.g., database 240, and/or the like) (Step 320). Thedevelopment script may be deployed into database management system 216via development gateway 270. Moreover, the routing of the developmentscript within database management system 216 may be controlled, managed,and/or, administered by update engine 250 and/or update module 245.

In various embodiments, method 300 may further comprise generating newobject code within the database structure associated with the existingobject (Step 325). [QUESTION: HOW DOES THE SYSTEM KNOW WHAT CODE TOREPLACE ON THE DATABASE AND/OR WHAT CODE TO CHANGE ON THE DATABASEPRESUMING THAT THE DATABASE DOES NOT GET COMPLETELY CHANGED WHENDEVELOPMENT SCRIPT IS DEPLOYED TO THE DATABASE?]

In various embodiments, method 300 may further comprise analyzing via adatabase health monitoring module 260 the new object code (Step 330).Method 300 may further comprise determining via the database healthmonitoring module and based on the analyzing at least one of asuccessful deployment of the new object code or an unsuccessfuldeployment of the new object code (Step 335). [QUESTION: HOW IS THISDONE? ARE THERE DATA STRUCTURES OR METADATA ASSOCIATED WITH THE NEWOBJECT CODE THAT IS EVALUATED? I NOTE IN YOUR FIGURE THAT THERE IS ADEPLOYED OBJECT SUCCESSFULLY BOX WITH A YES OR NO DECISION. CAN YOUPLEASE EXPLAIN WHAT THE OPERATION TO DETERMINE THIS SUCCESS IS?]

In various embodiments, method 300 may further comprise copying viabackup engine 255, the new object code to update module 245 (Step 340).The copying may be triggered by and/or may be in response to determiningthe successful deployment of the new object code. In this regard, thenew object code may replace the existing object code on/or within updatemodule 245. Method 300 may further comprise transmitting a notificationof the successful deployment of the new object code (Step 345). Thenotification may be transmitted in response to at least one of thedetermining of a successful deployment of the new object code or thecopying of the new object code to update module 245.

In various embodiments, method 300 may further comprise deploying viathe backup engine the existing object code from update module 245 to thedatabase structure (Step 350). The existing object code may be deployedto the database structure in response to determining an unsuccessfuldeployment of the new object code. Method 300 may further comprisereplacing the new object code with the existing object code (step 355).The replacing of the new object code with the existing object code maybe in response to the deploying of the existing object code from updatemodule 245.

Systems, methods and computer program products are provided. In thedetailed description herein, references to “various embodiments”, “oneembodiment”, “an embodiment”, “an example embodiment”, etc., indicatethat the embodiment described may include a particular feature,structure, or characteristic, but every embodiment may not necessarilyinclude the particular feature, structure, or characteristic. Moreover,such phrases are not necessarily referring to the same embodiment.Further, when a particular feature, structure, or characteristic isdescribed in connection with an embodiment, it is submitted that it iswithin the knowledge of one skilled in the art to affect such feature,structure, or characteristic in connection with other embodimentswhether or not explicitly described. After reading the description, itwill be apparent to one skilled in the relevant art(s) how to implementthe disclosure in alternative embodiments.

Phrases and terms similar to an “item” may include any good, service,merchant, information, experience, data, content, access, rental, lease,contribution, account, credit, debit, benefit, right, reward, points,coupons, credits, monetary equivalent, anything of value, something ofminimal or no value, monetary value, non-monetary value and/or the like.

The phrases consumer, customer, user, account holder, account affiliate,cardmember and/or the like shall include any person, entity, business,government organization, business, software, hardware, machineassociated with a transaction account, buys merchant offerings offeredby one or more merchants using the account and/or is designated forperforming transactions on the account, regardless of whether a physicalcard is associated with the account. For example, the cardmember mayinclude a transaction account owner, a transaction account user, anaccount affiliate, a child account user, a subsidiary account user, abeneficiary of an account, a custodian of an account, and/or any otherperson or entity affiliated or associated with a transaction account.

Terms and phrases similar to “sync,” “syncing,” and/or “synchronizing”may include associating, tagging, flagging, correlating, using a look-uptable or any other method or system for indicating or creating arelationship between elements such as, for example (i) a transactionaccount and (ii) an item (e.g., offer, reward, discount) and/or digitalchannel. Moreover, the sync may occur at any point, in response to anysuitable action, event, or period of time. The sync may occur atpre-determined intervals, periodic, randomly, once, more than once, orin response to a suitable request or action.

Terms and phrases similar to “associate” and/or “associating” mayinclude tagging, flagging, correlating, using a look-up table or anyother method or system for indicating or creating a relationship betweenelements, such as, for example, (i) a transaction account and (ii) anitem (e.g., offer, reward, discount) and/or digital channel. Moreover,the associating may occur at any point, in response to any suitableaction, event, or period of time. The associating may occur atpre-determined intervals, periodic, randomly, once, more than once, orin response to a suitable request or action.

Any communication, transmission and/or channel discussed herein mayinclude any system or method for delivering content (e.g. data,information, metadata, etc.), and/or the content itself. The content maybe presented in any form or medium, and in various embodiments, thecontent may be delivered electronically and/or capable of beingpresented electronically. For example, a channel may comprise a website,a uniform resource locator (“URL”), a document (e.g., a Microsoft Worddocument, a Microsoft Excel document, an Adobe .pdf document, etc.), an“ebook,” an “emagazine,” an application or microapplication (asdescribed below), an SMS or other type of text message, an email,Facebook, Twitter, MMS and/or other type of communication technology. Invarious embodiments, a channel may be hosted or provided by a datapartner. In various embodiments, the distribution channel may compriseat least one of a merchant website, a social media website, affiliate orpartner websites, an external vendor, a mobile device communication,social media network and/or location based service. Distributionchannels may include at least one of a merchant website, a social mediasite, affiliate or partner websites, an external vendor, and a mobiledevice communication. Examples of social media sites include Facebook®,foursquare®, Twitter®, MySpace®, LinkedIn®, and the like. Examples ofaffiliate or partner websites include American Express®, Groupon®,LivingSocial®, and the like. Moreover, examples of mobile devicecommunications include texting, email, and mobile applications forsmartphones.

A “consumer profile” or “consumer profile data” may comprise anyinformation or data about a consumer that describes an attributeassociated with the consumer (e.g., a preference, an interest,demographic information, personally identifying information, and thelike).

In various embodiments, the methods described herein are implementedusing the various particular machines described herein. The methodsdescribed herein may be implemented using the below particular machines,and those hereinafter developed, in any suitable combination, as wouldbe appreciated immediately by one skilled in the art. Further, as isunambiguous from this disclosure, the methods described herein mayresult in various transformations of certain articles.

For the sake of brevity, conventional data networking, applicationdevelopment and other functional aspects of the systems (and componentsof the individual operating components of the systems) may not bedescribed in detail herein. Furthermore, the connecting lines shown inthe various figures contained herein are intended to represent exemplaryfunctional relationships and/or physical couplings between the variouselements. It should be noted that many alternative or additionalfunctional relationships or physical connections may be present in apractical system.

The various system components discussed herein may include one or moreof the following: a host server or other computing systems including aprocessor for processing digital data; a memory coupled to the processorfor storing digital data; an input digitizer coupled to the processorfor inputting digital data; an application program stored in the memoryand accessible by the processor for directing processing of digital databy the processor; a display device coupled to the processor and memoryfor displaying information derived from digital data processed by theprocessor; and a plurality of databases. Various databases used hereinmay include: client data; merchant data; financial institution data;and/or like data useful in the operation of the system. As those skilledin the art will appreciate, user computer may include an operatingsystem (e.g., Windows OS, UNIX, Linux, Solaris, MacOS, etc.) as well asvarious conventional support software and drivers typically associatedwith computers.

The present system or any part(s) or function(s) thereof may beimplemented using hardware, software or a combination thereof and may beimplemented in one or more computer systems or other processing systems.However, the manipulations performed by embodiments were often referredto in terms, such as matching or selecting, which are commonlyassociated with mental operations performed by a human operator. No suchcapability of a human operator is necessary, or desirable in most cases,in any of the operations described herein. Rather, the operations may bemachine operations. Useful machines for performing the variousembodiments include general purpose digital computers or similardevices.

In fact, in various embodiments, the embodiments are directed toward oneor more computer systems capable of carrying out the functionalitydescribed herein. The computer system includes one or more processors,such as processor. The processor is connected to a communicationinfrastructure (e.g., a communications bus, cross over bar, or network).Various software embodiments are described in terms of this exemplarycomputer system. After reading this description, it will become apparentto a person skilled in the relevant art(s) how to implement variousembodiments using other computer systems and/or architectures. Computersystem can include a display interface that forwards graphics, text, andother data from the communication infrastructure (or from a frame buffernot shown) for display on a display unit.

Computer system also includes a main memory, such as for example randomaccess memory (RAM), and may also include a secondary memory. Thesecondary memory may include, for example, a hard disk drive and/or aremovable storage drive, representing a floppy disk drive, a magnetictape drive, an optical disk drive, etc. The removable storage drivereads from and/or writes to a removable storage unit in a well-knownmanner. Removable storage unit represents a floppy disk, magnetic tape,optical disk, etc. which is read by and written to by removable storagedrive . As will be appreciated, the removable storage unit includes acomputer usable storage medium having stored therein computer softwareand/or data.

In various embodiments, secondary memory may include other similardevices for allowing computer programs or other instructions to beloaded into computer system. Such devices may include, for example, aremovable storage unit and an interface. Examples of such may include aprogram cartridge and cartridge interface (such as that found in videogame devices), a removable memory chip (such as an erasable programmableread only memory (EPROM), or programmable read only memory (PROM)) andassociated socket, and other removable storage units and interfaces,which allow software and data to be transferred from the removablestorage unit to computer system.

Computer system may also include a communications interface.Communications interface allows software and data to be transferredbetween computer system and external devices. Examples of communicationsinterface may include a modem, a network interface (such as an Ethernetcard), a communications port, a Personal Computer Memory CardInternational Association (PCMCIA) slot and card, etc. Software and datatransferred via communications interface are in the form of signalswhich may be electronic, electromagnetic, and optical or other signalscapable of being received by communications interface. These signals areprovided to communications interface via a communications path (e.g.,channel). This channel carries signals and may be implemented usingwire, cable, fiber optics, a telephone line, a cellular link, a radiofrequency (RF) link, wireless and other communications channels.

The terms “computer program medium” and “computer usable medium” areused to generally refer to media such as removable storage drive and ahard disk installed in hard disk drive. These computer program productsprovide software to computer system.

Computer programs (also referred to as computer control logic) arestored in main memory and/or secondary memory. Computer programs mayalso be received via communications interface. Such computer programs,when executed, enable the computer system to perform the features asdiscussed herein. In particular, the computer programs, when executed,enable the processor to perform the features of various embodiments.Accordingly, such computer programs represent controllers of thecomputer system.

In various embodiments, software may be stored in a computer programproduct and loaded into computer system using removable storage drive,hard disk drive or communications interface. The control logic(software), when executed by the processor, causes the processor toperform the functions of various embodiments as described herein. Invarious embodiments, hardware components such as application specificintegrated circuits (ASICs). Implementation of the hardware statemachine so as to perform the functions described herein will be apparentto persons skilled in the relevant art(s).

In various embodiments, the server may include application servers (e.g.WEB SPHERE, WEB LOGIC, JBOSS). In various embodiments, the server mayinclude web servers (e.g. APACHE, IIS, GWS, SUN JAVA SYSTEM WEB SERVER).

A web client includes any device (e.g., personal computer) whichcommunicates via any network, for example such as those discussedherein. Such browser applications comprise Internet browsing softwareinstalled within a computing unit or a system to conduct onlinetransactions and/or communications. These computing units or systems maytake the form of a computer or set of computers, although other types ofcomputing units or systems may be used, including laptops, notebooks,tablets, hand held computers, personal digital assistants, set-topboxes, workstations, computer-servers, main frame computers,mini-computers, PC servers, pervasive computers, network sets ofcomputers, personal computers, such as iPads, iMacs, and MacBooks,kiosks, terminals, point of sale (POS) devices and/or terminals,televisions, or any other device capable of receiving data over anetwork. A web-client may run Microsoft Internet Explorer, MozillaFirefox, Google Chrome, Apple Safari, or any other of the myriadsoftware packages available for browsing the internet.

Practitioners will appreciate that a web client may or may not be indirect contact with an application server. For example, a web client mayaccess the services of an application server through another serverand/or hardware component, which may have a direct or indirectconnection to an Internet server. For example, a web client maycommunicate with an application server via a load balancer. In anexemplary embodiment, access is through a network or the Internetthrough a commercially-available web-browser software package.

As those skilled in the art will appreciate, a web client includes anoperating system (e.g., Windows OS, UNIX, Linux, Solaris, MacOS, etc.)as well as various conventional support software and drivers typicallyassociated with computers. A web client may include any suitablepersonal computer, network computer, workstation, personal digitalassistant, cellular phone, smart phone, minicomputer, mainframe or thelike. A web client can be in a home or business environment with accessto a network. In an exemplary embodiment, access is through a network orthe Internet through a commercially available web-browser softwarepackage. A web client may implement security protocols such as SecureSockets Layer (SSL) and Transport Layer Security (TLS). A web client mayimplement several application layer protocols including http, https,ftp, and sftp.

In various embodiments, components, modules, and/or engines of system200 may be implemented as micro-applications or micro-apps. Micro-appsare typically deployed in the context of a mobile operating system,including for example, a Windows mobile operating system, an AndroidOperating System, Apple iOS, a Blackberry operating system and the like.The micro-app may be configured to leverage the resources of the largeroperating system and associated hardware via a set of predeterminedrules which govern the operations of various operating systems andhardware resources. For example, where a micro-app desires tocommunicate with a device or network other than the mobile device ormobile operating system, the micro-app may leverage the communicationprotocol of the operating system and associated device hardware underthe predetermined rules of the mobile operating system. Moreover, wherethe micro-app desires an input from a user, the micro-app may beconfigured to request a response from the operating system whichmonitors various hardware components and then communicates a detectedinput from the hardware to the micro-app.

As used herein, the term “network” includes any cloud, cloud computingsystem or electronic communications system or method which incorporateshardware and/or software components. Communication among the parties maybe accomplished through any suitable communication channels, such as,for example, a telephone network, an extranet, an intranet, Internet,point of interaction device (point of sale device, personal digitalassistant (e.g., iPhone®, Blackberry®), cellular phone, kiosk, etc.),online communications, satellite communications, off-linecommunications, wireless communications, transponder communications,local area network (LAN), wide area network (WAN), virtual privatenetwork (VPN), networked or linked devices, keyboard, mouse and/or anysuitable communication or data input modality. Moreover, although thesystem is frequently described herein as being implemented with TCP/IPcommunications protocols, the system may also be implemented using IPX,Appletalk, IP-6, NetBIOS, OSI, any tunneling protocol (e.g. IPsec, SSH),or any number of existing or future protocols. If the network is in thenature of a public network, such as the Internet, it may be advantageousto presume the network to be insecure and open to eavesdroppers.Specific information related to the protocols, standards, andapplication software utilized in connection with the Internet isgenerally known to those skilled in the art and, as such, need not bedetailed herein.

The various system components may be independently, separately orcollectively suitably coupled to the network via data links whichincludes, for example, a connection to an Internet Service Provider(ISP) over the local loop as is typically used in connection withstandard modem communication, cable modem, Dish networks, ISDN, DigitalSubscriber Line (DSL), or various wireless communication methods. It isnoted that the network may be implemented as other types of networks,such as an interactive television (ITV) network. Moreover, the systemcontemplates the use, sale or distribution of any goods, services orinformation over any network having similar functionality describedherein.

“Cloud” or “Cloud computing” includes a model for enabling convenient,on-demand network access to a shared pool of configurable computingresources (e.g., networks, servers, storage, applications, and services)that can be rapidly provisioned and released with minimal managementeffort or service provider interaction. Cloud computing may includelocation-independent computing, whereby shared servers provideresources, software, and data to computers and other devices on demand.For more information regarding cloud computing, see the NIST's (NationalInstitute of Standards and Technology) definition of cloud computing.

As used herein, “transmit” may include sending electronic data from onesystem component to another over a network connection. Additionally, asused herein, “data” may include encompassing information such ascommands, queries, files, data for storage, and the like in digital orany other form.

As used herein, “issue a debit”, “debit” or “debiting” refers to eithercausing the debiting of a stored value or prepaid card-type financialaccount, or causing the charging of a credit or charge card-typefinancial account, as applicable.

The system contemplates uses in association with web services, utilitycomputing, pervasive and individualized computing, security and identitysolutions, autonomic computing, cloud computing, commodity computing,mobility and wireless solutions, open source, biometrics, grid computingand/or mesh computing.

Any databases discussed herein may include relational, hierarchical,graphical, or object-oriented structure and/or any other databaseconfigurations. Common database products that may be used to implementthe databases include DB2 by IBM (Armonk, N.Y.), various databaseproducts available from Oracle Corporation (Redwood Shores, Calif.),Microsoft Access or Microsoft SQL Server by Microsoft Corporation(Redmond, Wash.), MySQL by MySQL AB (Uppsala, Sweden), or any othersuitable database product. Moreover, the databases may be organized inany suitable manner, for example, as data tables or lookup tables. Eachrecord may be a single file, a series of files, a linked series of datafields or any other data structure. Association of certain data may beaccomplished through any desired data association technique such asthose known or practiced in the art. For example, the association may beaccomplished either manually or automatically. Automatic associationtechniques may include, for example, a database search, a databasemerge, GREP, AGREP, SQL, using a key field in the tables to speedsearches, sequential searches through all the tables and files, sortingrecords in the file according to a known order to simplify lookup,and/or the like. The association step may be accomplished by a databasemerge function, for example, using a “key field” in pre-selecteddatabases or data sectors. Various database tuning steps arecontemplated to optimize database performance. For example, frequentlyused files such as indexes may be placed on separate file systems toreduce In/Out (“I/O”) bottlenecks.

More particularly, a “key field” partitions the database according tothe high-level class of objects defined by the key field. For example,certain types of data may be designated as a key field in a plurality ofrelated data tables and the data tables may then be linked on the basisof the type of data in the key field. The data corresponding to the keyfield in each of the linked data tables is preferably the same or of thesame type. However, data tables having similar, though not identical,data in the key fields may also be linked by using AGREP, for example.In accordance with one embodiment, any suitable data storage techniquemay be utilized to store data without a standard format. Data sets maybe stored using any suitable technique, including, for example, storingindividual files using an ISO/IEC 7816-4 file structure; implementing adomain whereby a dedicated file is selected that exposes one or moreelementary files containing one or more data sets; using data setsstored in individual files using a hierarchical filing system; data setsstored as records in a single file (including compression, SQLaccessible, hashed via one or more keys, numeric, alphabetical by firsttuple, etc.); Binary Large Object (BLOB); stored as ungrouped dataelements encoded using ISO/IEC 7816-6 data elements; stored as ungroupeddata elements encoded using ISO/IEC Abstract Syntax Notation (ASN.1) asin ISO/IEC 8824 and 8825; and/or other proprietary techniques that mayinclude fractal compression methods, image compression methods, etc.

In one exemplary embodiment, the ability to store a wide variety ofinformation in different formats is facilitated by storing theinformation as a BLOB. Thus, any binary information can be stored in astorage space associated with a data set. As discussed above, the binaryinformation may be stored on the financial transaction instrument orexternal to but affiliated with the financial transaction instrument.The BLOB method may store data sets as ungrouped data elements formattedas a block of binary via a fixed memory offset using either fixedstorage allocation, circular queue techniques, or best practices withrespect to memory management (e.g., paged memory, least recently used,etc.). By using BLOB methods, the ability to store various data setsthat have different formats facilitates the storage of data associatedwith the financial transaction instrument by multiple and unrelatedowners of the data sets. For example, a first data set which may bestored may be provided by a first party, a second data set which may bestored may be provided by an unrelated second party, and yet a thirddata set which may be stored, may be provided by an third partyunrelated to the first and second party. Each of these three exemplarydata sets may contain different information that is stored usingdifferent data storage formats and/or techniques. Further, each data setmay contain subsets of data that also may be distinct from othersubsets.

As stated above, in various embodiments, the data can be stored withoutregard to a common format. However, in one exemplary embodiment, thedata set (e.g., BLOB) may be annotated in a standard manner whenprovided for manipulating the data onto the financial transactioninstrument. The annotation may comprise a short header, trailer, orother appropriate indicator related to each data set that is configuredto convey information useful in managing the various data sets. Forexample, the annotation may be called a “condition header”, “header”,“trailer”, or “status”, herein, and may comprise an indication of thestatus of the data set or may include an identifier correlated to aspecific issuer or owner of the data. In one example, the first threebytes of each data set BLOB may be configured or configurable toindicate the status of that particular data set; e.g., LOADED,INITIALIZED, READY, BLOCKED, REMOVABLE, or DELETED. Subsequent bytes ofdata may be used to indicate for example, the identity of the issuer,user, transaction/membership account identifier or the like. Each ofthese condition annotations are further discussed herein.

The data set annotation may also be used for other types of statusinformation as well as various other purposes. For example, the data setannotation may include security information establishing access levels.The access levels may, for example, be configured to permit only certainindividuals, levels of employees, companies, or other entities to accessdata sets, or to permit access to specific data sets based on thetransaction, merchant, issuer, user or the like. Furthermore, thesecurity information may restrict/permit only certain actions such asaccessing, modifying, and/or deleting data sets. In one example, thedata set annotation indicates that only the data set owner or the userare permitted to delete a data set, various identified users may bepermitted to access the data set for reading, and others are altogetherexcluded from accessing the data set. However, other access restrictionparameters may also be used allowing various entities to access a dataset with various permission levels as appropriate.

The data, including the header or trailer may be received by astandalone interaction device configured to add, delete, modify, oraugment the data in accordance with the header or trailer. As such, inone embodiment, the header or trailer is not stored on the transactiondevice along with the associated issuer-owned data but instead theappropriate action may be taken by providing to the transactioninstrument user at the stand alone device, the appropriate option forthe action to be taken. The system may contemplate a data storagearrangement wherein the header or trailer, or header or trailer history,of the data is stored on the transaction instrument in relation to theappropriate data.

One skilled in the art will also appreciate that, for security reasons,any databases, systems, devices, servers or other components of thesystem may consist of any combination thereof at a single location or atmultiple locations, wherein each database or system includes any ofvarious suitable security features, such as firewalls, access codes,encryption, decryption, compression, decompression, and/or the like.

Encryption may be performed by way of any of the techniques nowavailable in the art or which may become available—e.g., Twofish, RSA,El Gamal, Schorr signature, DSA, PGP, PM, GPG (GnuPG), and symmetric andasymmetric cryptosystems.

The computing unit of the web client may be further equipped with anInternet browser connected to the Internet or an intranet using standarddial-up, cable, DSL or any other Internet protocol known in the art.Transactions originating at a web client may pass through a firewall inorder to prevent unauthorized access from users of other networks.Further, additional firewalls may be deployed between the varyingcomponents of CMS to further enhance security.

Firewall may include any hardware and/or software suitably configured toprotect CMS components and/or enterprise computing resources from usersof other networks. Further, a firewall may be configured to limit orrestrict access to various systems and components behind the firewallfor web clients connecting through a web server. Firewall may reside invarying configurations including Stateful Inspection, Proxy based,access control lists, and Packet Filtering among others. Firewall may beintegrated within a web server or any other CMS components or mayfurther reside as a separate entity. A firewall may implement networkaddress translation (“NAT”) and/or network address port translation(“NAPT”). A firewall may accommodate various tunneling protocols tofacilitate secure communications, such as those used in virtual privatenetworking. A firewall may implement a demilitarized zone (“DMZ”) tofacilitate communications with a public network such as the Internet. Afirewall may be integrated as software within an Internet server, anyother application server components or may reside within anothercomputing device or may take the form of a standalone hardwarecomponent.

The computers discussed herein may provide a suitable website or otherInternet-based graphical user interface which is accessible by users. Inone embodiment, the Microsoft Internet Information Server (IIS),Microsoft Transaction Server (MTS), and Microsoft SQL Server, are usedin conjunction with the Microsoft operating system, Microsoft NT webserver software, a Microsoft SQL Server database system, and a MicrosoftCommerce Server. Additionally, components such as Access or MicrosoftSQL Server, Oracle, Sybase, Informix MySQL, Interbase, etc., may be usedto provide an Active Data Object (ADO) compliant database managementsystem. In one embodiment, the Apache web server is used in conjunctionwith a Linux operating system, a MySQL database, and the Perl, PHP,and/or Python programming languages.

Any of the communications, inputs, storage, databases or displaysdiscussed herein may be facilitated through a website having web pages.The term “web page” as it is used herein is not meant to limit the typeof documents and applications that might be used to interact with theuser. For example, a typical website might include, in addition tostandard HTML documents, various forms, Java applets, JavaScript, activeserver pages (ASP), common gateway interface scripts (CGI), extensiblemarkup language (XML), dynamic HTML, cascading style sheets (CSS), AJAX(Asynchronous Javascript And XML), helper applications, plug-ins, andthe like. A server may include a web service that receives a requestfrom a web server, the request including a URL(http://yahoo.com/stockquotes/ge) and an IP address (123.56.789.234).The web server retrieves the appropriate web pages and sends the data orapplications for the web pages to the IP address. Web services areapplications that are capable of interacting with other applicationsover a communications means, such as the internet. Web services aretypically based on standards or protocols such as XML, SOAP, AJAX, WSDLand UDDI. Web services methods are well known in the art, and arecovered in many standard texts.

Middleware may include any hardware and/or software suitably configuredto facilitate communications and/or process transactions betweendisparate computing systems. Middleware components are commerciallyavailable and known in the art. Middleware may be implemented throughcommercially available hardware and/or software, through custom hardwareand/or software components, or through a combination thereof. Middlewaremay reside in a variety of configurations and may exist as a standalonesystem or may be a software component residing on the Internet server.Middleware may be configured to process transactions between the variouscomponents of an application server and any number of internal orexternal systems for any of the purposes disclosed herein. WebSphereMQTM (formerly MQSeries) by IBM, Inc. (Armonk, N.Y.) is an example of acommercially available middleware product. An Enterprise Service Bus(“ESB”) application is another example of middleware.

Practitioners will also appreciate that there are a number of methodsfor displaying data within a browser-based document. Data may berepresented as standard text or within a fixed list, scrollable list,drop-down list, editable text field, fixed text field, pop-up window,and the like. Likewise, there are a number of methods available formodifying data in a web page such as, for example, free text entry usinga keyboard, selection of menu items, check boxes, option boxes, and thelike.

The system and method may be described herein in terms of functionalblock components, screen shots, optional selections and variousprocessing steps. It should be appreciated that such functional blocksmay be realized by any number of hardware and/or software componentsconfigured to perform the specified functions. For example, the systemmay employ various integrated circuit components, e.g., memory elements,processing elements, logic elements, look-up tables, and the like, whichmay carry out a variety of functions under the control of one or moremicroprocessors or other control devices. Similarly, the softwareelements of the system may be implemented with any programming orscripting language such as C, C++, C#, Java, JavaScript, VBScript,Macromedia Cold Fusion, COBOL, Microsoft Active Server Pages, assembly,PERL, PHP, awk, Python, Visual Basic, SQL Stored Procedures, PL/SQL, anyUNIX shell script, and extensible markup language (XML) with the variousalgorithms being implemented with any combination of data structures,objects, processes, routines or other programming elements. Further, itshould be noted that the system may employ any number of conventionaltechniques for data transmission, signaling, data processing, networkcontrol, and the like. Still further, the system could be used to detector prevent security issues with a client-side scripting language, suchas JavaScript, VBScript or the like.

The merchant computer and the bank computer may be interconnected via asecond network, referred to as a payment network. The payment networkwhich may be part of certain transactions represents existingproprietary networks that presently accommodate transactions for creditcards, debit cards, and other types of financial/banking cards. Thepayment network is a closed network that is assumed to be secure fromeavesdroppers. Exemplary transaction networks may include the AmericanExpress®, VisaNet® and the Veriphone® networks.

The electronic commerce system may be implemented at the customer andissuing bank. In an exemplary implementation, the electronic commercesystem is implemented as computer software modules loaded onto thecustomer computer and the banking computing center. The merchantcomputer does not require any additional software to participate in theonline commerce transactions supported by the online commerce system.

As will be appreciated by one of ordinary skill in the art, the systemmay be embodied as a customization of an existing system, an add-onproduct, a processing apparatus executing upgraded software, a standalone system, a distributed system, a method, a data processing system,a device for data processing, and/or a computer program product.Accordingly, any portion of the system or a module may take the form ofa processing apparatus executing code, an internet based embodiment, anentirely hardware embodiment, or an embodiment combining aspects of theinternet, software and hardware. Furthermore, the system may take theform of a computer program product on a computer-readable storage mediumhaving computer-readable program code means embodied in the storagemedium. Any suitable computer-readable storage medium may be utilized,including hard disks, CD-ROM, optical storage devices, magnetic storagedevices, and/or the like.

The system and method is described herein with reference to screenshots, block diagrams and flowchart illustrations of methods, apparatus(e.g., systems), and computer program products according to variousembodiments. It will be understood that each functional block of theblock diagrams and the flowchart illustrations, and combinations offunctional blocks in the block diagrams and flowchart illustrations,respectively, can be implemented by computer program instructions.

These computer program instructions may be loaded onto a general purposecomputer, special purpose computer, or other programmable dataprocessing apparatus to produce a machine, such that the instructionsthat execute on the computer or other programmable data processingapparatus create means for implementing the functions specified in theflowchart block or blocks. These computer program instructions may alsobe stored in a computer-readable memory that can direct a computer orother programmable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablememory produce an article of manufacture including instruction meanswhich implement the function specified in the flowchart block or blocks.The computer program instructions may also be loaded onto a computer orother programmable data processing apparatus to cause a series ofoperational steps to be performed on the computer or other programmableapparatus to produce a computer-implemented process such that theinstructions which execute on the computer or other programmableapparatus provide steps for implementing the functions specified in theflowchart block or blocks.

Accordingly, functional blocks of the block diagrams and flowchartillustrations support combinations of means for performing the specifiedfunctions, combinations of steps for performing the specified functions,and program instruction means for performing the specified functions. Itwill also be understood that each functional block of the block diagramsand flowchart illustrations, and combinations of functional blocks inthe block diagrams and flowchart illustrations, can be implemented byeither special purpose hardware-based computer systems which perform thespecified functions or steps, or suitable combinations of specialpurpose hardware and computer instructions. Further, illustrations ofthe process flows and the descriptions thereof may make reference touser windows, webpages, websites, web forms, prompts, etc. Practitionerswill appreciate that the illustrated steps described herein may comprisein any number of configurations including the use of windows, webpages,web forms, popup windows, prompts and the like. It should be furtherappreciated that the multiple steps as illustrated and described may becombined into single webpages and/or windows but have been expanded forthe sake of simplicity. In other cases, steps illustrated and describedas single process steps may be separated into multiple webpages and/orwindows but have been combined for simplicity.

The term “non-transitory” is to be understood to remove only propagatingtransitory signals per se from the claim scope and does not relinquishrights to all standard computer-readable media that are not onlypropagating transitory signals per se. Stated another way, the meaningof the term “non-transitory computer-readable medium” and“non-transitory computer-readable storage medium” should be construed toexclude only those types of transitory computer-readable media whichwere found in In Re Nuijten to fall outside the scope of patentablesubject matter under 35 U.S.C. §101.

In yet another embodiment, the transponder, transponder-reader, and/ortransponder-reader system are configured with a biometric securitysystem that may be used for providing biometrics as a secondary form ofidentification. The biometric security system may include a transponderand a reader communicating with the system. The biometric securitysystem also may include a biometric sensor that detects biometricsamples and a device for verifying biometric samples. The biometricsecurity system may be configured with one or more biometric scanners,processors and/or systems. A biometric system may include one or moretechnologies, or any portion thereof, such as, for example, recognitionof a biometric. As used herein, a biometric may include a user's voice,fingerprint, facial, ear, signature, vascular patterns, DNA sampling,hand geometry, sound, olfactory, keystroke/typing, iris, retinal or anyother biometric relating to recognition based upon any body part,function, system, attribute and/or other characteristic, or any portionthereof.

Phrases and terms similar to an “entity” may include any individual,consumer, customer, group, business, organization, government entity,transaction account issuer or processor (e.g., credit, charge, etc.),merchant, consortium of merchants, account holder, charitableorganization, software, hardware, and/or any other type of entity. Theterms “user,” “consumer,” “purchaser,” and/or the plural form of theseterms are used interchangeably throughout herein to refer to thosepersons or entities that are alleged to be authorized to use atransaction account.

Phrases and terms similar to “account”, “account number”, “account code”or “consumer account” as used herein, may include any device, code(e.g., one or more of an authorization/access code, personalidentification number (“PIN”), Internet code, other identification code,and/or the like), number, letter, symbol, digital certificate, smartchip, digital signal, analog signal, biometric or otheridentifier/indicia suitably configured to allow the consumer to access,interact with or communicate with the system. The account number mayoptionally be located on or associated with a rewards account, chargeaccount, credit account, debit account, prepaid account, telephone card,embossed card, smart card, magnetic stripe card, bar code card,transponder, radio frequency card or an associated account.

The system may include or interface with any of the foregoing accounts,devices, and/or a transponder and reader (e.g. RFID reader) in RFcommunication with the transponder (which may include a fob), orcommunications between an initiator and a target enabled by near fieldcommunications (NFC). Typical devices may include, for example, a keyring, tag, card, cell phone, wristwatch or any such form capable ofbeing presented for interrogation. Moreover, the system, computing unitor device discussed herein may include a “pervasive computing device,”which may include a traditionally non-computerized device that isembedded with a computing unit. Examples may include watches, Internetenabled kitchen appliances, restaurant tables embedded with RF readers,wallets or purses with imbedded transponders, etc. Furthermore, a deviceor financial transaction instrument may have electronic andcommunications functionality enabled, for example, by: a network ofelectronic circuitry that is printed or otherwise incorporated onto orwithin the transaction instrument (and typically referred to as a “smartcard”); a fob having a transponder and an RFID reader; and/or near fieldcommunication (NFC) technologies. For more information regarding NFC,refer to the following specifications all of which are incorporated byreference herein: ISO/IEC 18092/ECMA-340, Near Field CommunicationInterface and Protocol-1 (NFCIP-1); ISO/IEC 21481/ECMA-352, Near FieldCommunication Interface and Protocol-2 (NFCIP-2); and EMV 4.2.

The account number may be distributed and stored in any form of plastic,electronic, magnetic, radio frequency, wireless, audio and/or opticaldevice capable of transmitting or downloading data from itself to asecond device. A consumer account number may be, for example, asixteen-digit account number, although each credit provider has its ownnumbering system, such as the fifteen-digit numbering system used byAmerican Express. Each company's account numbers comply with thatcompany's standardized format such that the company using afifteen-digit format will generally use three-spaced sets of numbers, asrepresented by the number “0000 000000 00000”. The first five to sevendigits are reserved for processing purposes and identify the issuingbank, account type, etc. In this example, the last (fifteenth) digit isused as a sum check for the fifteen digit number. The intermediaryeight-to-eleven digits are used to uniquely identify the consumer. Amerchant account number may be, for example, any number or alpha-numericcharacters that identify a particular merchant for purposes of accountacceptance, account reconciliation, reporting, or the like.

In various embodiments, an account number may identify a consumer. Inaddition, in various embodiments, a consumer may be identified by avariety of identifiers, including, for example, an email address, atelephone number, a cookie id, a radio frequency identifier (RFID), abiometric, and the like.

Phrases and terms similar to “financial institution” or “transactionaccount issuer” may include any entity that offers transaction accountservices. Although often referred to as a “financial institution,” thefinancial institution may represent any type of bank, lender or othertype of account issuing institution, such as credit card companies, cardsponsoring companies, or third party issuers under contract withfinancial institutions. It is further noted that other participants maybe involved in some phases of the transaction, such as an intermediarysettlement institution.

The terms “payment vehicle,” “financial transaction instrument,”“transaction instrument” and/or the plural form of these terms may beused interchangeably throughout to refer to a financial instrument.

Phrases and terms similar to “merchant,” “supplier” or “seller” mayinclude any entity that receives payment or other consideration. Forexample, a supplier may request payment for goods sold to a buyer whoholds an account with a transaction account issuer.

Phrases and terms similar to a “buyer” may include any entity thatreceives goods or services in exchange for consideration (e.g. financialpayment). For example, a buyer may purchase, lease, rent, barter orotherwise obtain goods from a supplier and pay the supplier using atransaction account.

Phrases and terms similar to “internal data” may include any data acredit issuer possesses or acquires pertaining to a particular consumer.Internal data may be gathered before, during, or after a relationshipbetween the credit issuer and the transaction account holder (e.g., theconsumer or buyer). Such data may include consumer demographic data.Consumer demographic data includes any data pertaining to a consumer.Consumer demographic data may include consumer name, address, telephonenumber, email address, employer and social security number. Consumertransactional data is any data pertaining to the particular transactionsin which a consumer engages during any given time period. Consumertransactional data may include, for example, transaction amount,transaction time, transaction vendor/merchant, and transactionvendor/merchant location. Transaction vendor/merchant location maycontain a high degree of specificity to a vendor/merchant. For example,transaction vendor/merchant location may include a particular gasolinefiling station in a particular postal code located at a particular crosssection or address. Also, for example, transaction vendor/merchantlocation may include a particular web address, such as a UniformResource Locator (“URL”), an email address and/or an Internet Protocol(“IP”) address for a vendor/merchant. Transaction vendor/merchant andtransaction vendor/merchant location may be associated with a particularconsumer and further associated with sets of consumers. Consumer paymentdata includes any data pertaining to a consumer's history of paying debtobligations. Consumer payment data may include consumer payment dates,payment amounts, balance amount, and credit limit. Internal data mayfurther comprise records of consumer service calls, complaints, requestsfor credit line increases, questions, and comments. A record of aconsumer service call includes, for example, date of call, reason forcall, and any transcript or summary of the actual call.

Phrases similar to a “payment processor” may include a company (e.g., athird party) appointed (e.g., by a merchant) to handle transactions. Apayment processor may include an issuer, acquirer, authorizer and/or anyother system or entity involved in the transaction process. Paymentprocessors may be broken down into two types: front-end and back-end.Front-end payment processors have connections to various transactionaccounts and supply authorization and settlement services to themerchant banks' merchants. Back-end payment processors acceptsettlements from front-end payment processors and, via The FederalReserve Bank, move money from an issuing bank to the merchant bank. Inan operation that will usually take a few seconds, the payment processorwill both check the details received by forwarding the details to therespective account's issuing bank or card association for verification,and may carry out a series of anti-fraud measures against thetransaction. Additional parameters, including the account's country ofissue and its previous payment history, may be used to gauge theprobability of the transaction being approved. In response to thepayment processor receiving confirmation that the transaction accountdetails have been verified, the information may be relayed back to themerchant, who will then complete the payment transaction. In response tothe verification being denied, the payment processor relays theinformation to the merchant, who may then decline the transaction.Phrases similar to a “payment gateway” or “gateway” may include anapplication service provider service that authorizes payments fore-businesses, online retailers, and/or traditional brick and mortarmerchants. The gateway may be the equivalent of a physical point of saleterminal located in most retail outlets. A payment gateway may protecttransaction account details by encrypting sensitive information, such astransaction account numbers, to ensure that information passes securelybetween the customer and the merchant and also between merchant andpayment processor.

Benefits, other advantages, and solutions to problems have beendescribed herein with regard to specific embodiments. However, thebenefits, advantages, solutions to problems, and any elements that maycause any benefit, advantage, or solution to occur or become morepronounced are not to be construed as critical, required, or essentialfeatures or elements of the disclosure. The scope of the disclosure isaccordingly to be limited by nothing other than the appended claims, inwhich reference to an element in the singular is not intended to mean“one and only one” unless explicitly so stated, but rather “one ormore.” Moreover, where a phrase similar to ‘at least one of A, B, and C’or ‘at least one of A, B, or C’ is used in the claims or specification,it is intended that the phrase be interpreted to mean that A alone maybe present in an embodiment, B alone may be present in an embodiment, Calone may be present in an embodiment, or that any combination of theelements A, B and C may be present in a single embodiment; for example,A and B, A and C, B and C, or A and B and C. Although the disclosureincludes a method, it is contemplated that it may be embodied ascomputer program instructions on a tangible computer-readable carrier,such as a magnetic or optical memory or a magnetic or optical disk. Allstructural, chemical, and functional equivalents to the elements of theabove-described exemplary embodiments that are known to those ofordinary skill in the art are expressly incorporated herein by referenceand are intended to be encompassed by the present claims. Moreover, itis not necessary for a device or method to address each and everyproblem sought to be solved by the present disclosure, for it to beencompassed by the present claims. Furthermore, no element, component,or method step in the present disclosure is intended to be dedicated tothe public regardless of whether the element, component, or method stepis explicitly recited in the claims. No claim element herein is to beconstrued under the provisions of 35 U.S.C. 112(f) unless the element isexpressly recited using the phrase “means for.” As used herein, theterms “comprises”, “comprising”, or any other variation thereof, areintended to cover a non-exclusive inclusion, such that a process,method, article, or apparatus that comprises a list of elements does notinclude only those elements but may include other elements not expresslylisted or inherent to such process, method, article, or apparatus.

What is claimed is:
 1. A method comprising: receiving, by the computerbased system and via a development gateway, a development script;copying, by the computer based system and via a backup engine, anexisting object code to an update module; deploying, by the computerbased system and via an update engine, the development script to thedatabase structure; generating, by the computer based system, new objectcode within the database structure associated with the existing objectcode; determining, by the computer based system and via a databasehealth monitoring module, at least one of a successful deployment of thenew object code or an unsuccessful deployment of the new object code. 2.The method of claim 1, further comprising identifying, by the computerbased system and via the update engine, existing object code within adatabase structure.
 3. The method of claim 2, wherein the identifyingincludes determining a location of the existing object code.
 4. Themethod of claim 1 further comprising analyzing, by the computer basedsystem via the database health monitoring module, the new object code.5. The method of claim 1, wherein the object code is associated with thedevelopment script.
 6. The method of claim 1, wherein the developmentgateway is a user interface for a developer.
 7. The method of claim 1further comprising copying, by the computer based system via the backupengine, the new object code to the update module in response to thedetermining a successful deployment of the new object code.
 8. Themethod of claim 7, wherein the new object code replaces the existingobject code on the update module.
 9. The method of claim 7, furthercomprising transmitting, by the computer based system, a notification ofthe successful deployment of the new object code in response to at leastone of the determining a successful deployment of the new object code orthe copying the new object code to the update module.
 10. The method ofclaim 1 further comprising deploying, by the computer based system viathe backup engine, the existing object code from the update module tothe database structure in response to the determining the unsuccessfuldeployment of the new object code.
 11. The method of claim 10 furthercomprising replacing, by the computer based system, the new object codewith the existing object code, in response to the deploying the existingobject code from the back up storage system.
 12. A computer basedsystem, comprising: a processor; a non-transitory memory configured tocommunicate with the processor, the non-transitory memory havinginstructions stored thereon; receiving, by the processor and via adevelopment gateway, a development script; copying, by the processor andvia a backup engine, an existing object code to a update module;deploying, by the processor and via an update engine, the developmentscript directly to the database structure; generating, by the processor,new object code within the database structure associated with theexisting object code; and determining, by the processor and via adatabase health monitoring module, at least one of a successfuldeployment of the new object code or an unsuccessful deployment of thenew object code.
 13. The system of claim 12 further comprising copying,by the processor via the backup engine, the new object code to theupdate module in response to the determining a successful deployment ofthe new object code.
 14. The system of claim 13, wherein the new objectcode replaces the existing object code on the update module.
 15. Thesystem of claim 13, further comprising transmitting, by the processor, anotification of the successful deployment of the new object code inresponse to at least one of the determining a successful deployment ofthe new object code or the copying the new object code to the updatemodule.
 16. The system of claim 12, further comprising deploying, by theprocessor via the backup engine, the existing object code from theupdate module to the database structure in response to the determiningthe unsuccessful deployment of the new object code.
 17. The system ofclaim 16, further comprising replacing, by the processor, the new objectcode with the existing object code in response to the deploying theexisting object code from the back up storage system.
 18. Anon-transitory computer program product having computer-executableinstructions stored thereon that, if executed by a computer basedsystem, causes the computer based system to be capable of performingoperations comprising: receiving, by the computer based system and via adevelopment gateway, a development script; copying, by the computerbased system and via a backup engine to a update module, an existingobject code; deploying, by the computer based system and via an updateengine, the development script directly to the database structure;generating, by the computer based system, new object code within thedatabase structure associated with the existing object code; anddetermining, by the computer based system via a database healthmonitoring module, at least one of a successful deployment of the newobject code or an unsuccessful deployment of the new object code. 19.The product of claim 18, further comprising: copying, by the computerbased system and via the backup engine, the new object code to theupdate module, in response to the determining a successful deployment ofthe new object code, wherein the new object code replaces the existingobject code on the update module; and transmitting, by the computerbased system, a notification of the successful deployment of the newobject code in response to at least one of the determining a successfuldeployment of the new object code or the copying the new object code tothe update module.
 20. The product of claim 18, further comprising:deploying, by the computer based system and via the backup engine, theexisting object code from the update module to the database structure,in response to the determining the unsuccessful deployment of the newobject code; and replacing, by the computer based system, the new objectcode with the existing object code, in response to the deploying theexisting object code from the back up storage system.